<!DOCTYPE HTML PUBLIC "-//ORA//DTD CD HTML 3.2//EN">
<HTML>
<HEAD>
<TITLE>[Chapter 24] 24.7 java.io.CharArrayReader (JDK 1.1)</TITLE>
<META NAME="author" CONTENT="David Flanagan">
<META NAME="date" CONTENT="Thu Jul 31 16:21:47 1997">
<META NAME="form" CONTENT="html">
<META NAME="metadata" CONTENT="dublincore.0.1">
<META NAME="objecttype" CONTENT="book part">
<META NAME="otheragent" CONTENT="gmat dbtohtml">
<META NAME="publisher" CONTENT="O'Reilly &amp; Associates, Inc.">
<META NAME="source" CONTENT="SGML">
<META NAME="subject" CONTENT="Java">
<META NAME="title" CONTENT="Java in a Nutshell">
<META HTTP-EQUIV="Content-Script-Type" CONTENT="text/javascript">
</HEAD>
<body vlink="#551a8b" alink="#ff0000" text="#000000" bgcolor="#FFFFFF" link="#0000ee">

<DIV CLASS=htmlnav>
<H1><a href='index.htm'><IMG SRC="gifs/smbanner.gif"
     ALT="Java in a Nutshell" border=0></a></H1>
<table width=515 border=0 cellpadding=0 cellspacing=0>
<tr>
<td width=172 align=left valign=top><A HREF="ch24_06.htm"><IMG SRC="gifs/txtpreva.gif" ALT="Previous" border=0></A></td>
<td width=171 align=center valign=top><B><FONT FACE="ARIEL,HELVETICA,HELV,SANSERIF" SIZE="-1">Chapter 24<br>The java.io Package</FONT></B></TD>
<td width=172 align=right valign=top><A HREF="ch24_08.htm"><IMG SRC="gifs/txtnexta.gif" ALT="Next" border=0></A></td>
</tr>
</table>

&nbsp;
<hr align=left width=515>
</DIV>
<DIV CLASS=sect1>
<h2 CLASS=sect1><A CLASS="TITLE" NAME="JNUT2-CH-24-SECT-7">24.7 java.io.CharArrayReader (JDK 1.1)</A></h2>

<DIV CLASS=sect2>
<h3 CLASS=sect2><A CLASS="TITLE" NAME="JNUT2-CH-24-SECT-7.1"></A></h3>
</DIV>

<P CLASS=para>
This class is a character input stream that uses a character
array as the source of the characters it returns.  You
create a <tt CLASS=literal>CharArrayReader</tt> by specifying the character
array, or portion of an array, that it is to read from.

<P CLASS=para>
<tt CLASS=literal>CharArrayReader</tt> defines the usual <tt CLASS=literal>Reader</tt>
methods, and supports the <tt CLASS=literal>mark()</tt> and <tt CLASS=literal>reset()</tt>
methods.

<P CLASS=para>
Note that the character array you pass to the
<tt CLASS=literal>CharArrayReader</tt> is not copied by this class.  This
means that changes you make to the elements of the array
after you create the input stream do affect the values
read from the array.

<P CLASS=para>
<tt CLASS=literal>CharArrayReader()</tt> is the character-array analog of
<tt CLASS=literal>ByteArrayInputStream</tt>, and is similar to
<tt CLASS=literal>StringReader</tt>.

<DIV CLASS=screen>
<P>
<PRE>
public class <tt CLASS=literal>CharArrayReader</tt> extends Reader {
    // <tt CLASS=literal>Public Constructors</tt>
            public <tt CLASS=literal>CharArrayReader</tt>(char[] <tt CLASS=literal>buf</tt>);
            public <tt CLASS=literal>CharArrayReader</tt>(char[] <tt CLASS=literal>buf</tt>, int <tt CLASS=literal>offset</tt>, int <tt CLASS=literal>length</tt>);
    // <tt CLASS=literal>Protected Instance Variables</tt>
            protected char[] <tt CLASS=literal>buf</tt>;
            protected int <tt CLASS=literal>count</tt>;
            protected int <tt CLASS=literal>markedPos</tt>;
            protected int <tt CLASS=literal>pos</tt>;
    // <tt CLASS=literal>Public Instance Methods</tt>
            public void <tt CLASS=literal>close</tt>();  //<tt CLASS=literal> Defines Reader</tt>
            public void <tt CLASS=literal>mark</tt>(int <tt CLASS=literal>readAheadLimit</tt>) throws IOException;  //<tt CLASS=literal> Overrides Reader</tt>
            public boolean <tt CLASS=literal>markSupported</tt>();  //<tt CLASS=literal> Overrides Reader</tt>
            public int <tt CLASS=literal>read</tt>() throws IOException;  //<tt CLASS=literal> Overrides Reader</tt>
            public int <tt CLASS=literal>read</tt>(char[] <tt CLASS=literal>b</tt>, int <tt CLASS=literal>off</tt>, int <tt CLASS=literal>len</tt>) throws IOException;  //<tt CLASS=literal> Defines Reader</tt>
            public boolean <tt CLASS=literal>ready</tt>() throws IOException;  //<tt CLASS=literal> Overrides Reader</tt>
            public void <tt CLASS=literal>reset</tt>() throws IOException;  //<tt CLASS=literal> Overrides Reader</tt>
            public long <tt CLASS=literal>skip</tt>(long <tt CLASS=literal>n</tt>) throws IOException;  //<tt CLASS=literal> Overrides Reader</tt>
}
</PRE>
</DIV>

</DIV>

<DIV CLASS=sect2>
<h3 CLASS=sect2><A CLASS="TITLE" NAME="JNUT2-CH-24-SECT-7.2">Hierarchy:</A></h3>

<P CLASS=para>
Object->Reader->CharArrayReader

</DIV>

</DIV>


<DIV CLASS=htmlnav>

<P>
<HR align=left width=515>
<table width=515 border=0 cellpadding=0 cellspacing=0>
<tr>
<td width=172 align=left valign=top><A HREF="ch24_06.htm"><IMG SRC="gifs/txtpreva.gif" ALT="Previous" border=0></A></td>
<td width=171 align=center valign=top><a href="index.htm"><img src='gifs/txthome.gif' border=0 alt='Home'></a></td>
<td width=172 align=right valign=top><A HREF="ch24_08.htm"><IMG SRC="gifs/txtnexta.gif" ALT="Next" border=0></A></td>
</tr>
<tr>
<td width=172 align=left valign=top>java.io.ByteArrayOutputStream (JDK 1.0)</td>
<td width=171 align=center valign=top><a href="index/idx_0.htm"><img src='gifs/index.gif' alt='Book Index' border=0></a></td>
<td width=172 align=right valign=top>java.io.CharArrayWriter (JDK 1.1)</td>
</tr>
</table>
<hr align=left width=515>

<IMG SRC="gifs/smnavbar.gif" USEMAP="#map" BORDER=0> 
<MAP NAME="map"> 
<AREA SHAPE=RECT COORDS="0,0,108,15" HREF="../javanut/index.htm"
alt="Java in a Nutshell"> 
<AREA SHAPE=RECT COORDS="109,0,200,15" HREF="../langref/index.htm" 
alt="Java Language Reference"> 
<AREA SHAPE=RECT COORDS="203,0,290,15" HREF="../awt/index.htm" 
alt="Java AWT"> 
<AREA SHAPE=RECT COORDS="291,0,419,15" HREF="../fclass/index.htm" 
alt="Java Fundamental Classes"> 
<AREA SHAPE=RECT COORDS="421,0,514,15" HREF="../exp/index.htm" 
alt="Exploring Java"> 
</MAP>
</DIV>

</BODY>
</HTML>
